Coffee Break

Copyright 1994-98, by Thomas Reed


Table of Contents


Legalese

Coffee Break is shareware. If you keep it, you should send $5 to the address listed in the Read Me file or the end of this documentation.

For more information about registering this program, see the Read Me or the Registering section end of this help.

Conventions in this manual

This manual is organized by component. The components describe Coffee Break's menus, dialogs and windows, and suggestions for use.

If you're reading this help file using a World Wide Web browser, but are new to hypertext, you may skip to any section by clicking it in the Table of Contents above. You may also click on any links embedded in the help text itself to skip directly to the referenced section. (Links are text that is styled in a special way -- usually underlined and colored in some way, unless you've changed your browser's settings.)

What is Coffee Break?

Coffee Break is an application that is designed to help you reduce your chances of getting a Repetitive Stress Injury (RSI), such as carpal tunnel syndrome. It does this by forcing you to take a break every so often.

The sole purpose of Coffee Break is to replace your weak willpower. Those of you who sit for hours on end in front of your computer every day, like I do, you are in danger of doing serious harm to your body. One of the best ways to avoid this is to take frequent breaks from the computer. When you're wrapped up in a project or a game, however, this can be hard to do without a little help!

Even if you have never had trouble with your hands, arms, shoulders, or back, I strongly recommend that you still use this program. My hands didn't ever hurt up until about a year before I first released Coffee Break. Now they hurt every time I type for too long.

How Coffee Break does it's job

Coffee Break stays in the background most of the time. The only evidence of it's existence is the window containing a timer, which constantly counts down.

When the timer hits zero, Coffee Break will move into the foreground, taking total control of your Mac. It will lock your computer for a user-specified period of time, forcing you to take a break from typing. You will hear me refer to this from time to time as "sleep time". Before Coffee Break locks the machine, it will let you know that it's time to save. This is just a simple safety feature to ensure that the break does not catch you by surprise. (Not that Coffee Break should cause you to lose any of your hard work, but we want to be careful, don't we? After all, you never know when you might lose power!)

For those users who may need a way to exit sleep mode in an emergency, I have provided such an option. See the "Restrict user" option in the Options Dialog section of this manual for more information.

The Menus

The basic interface is fairly simple. There are only six useful menu items, all of which are in the File menu. (This doesn't include the About Coffee Break item in the Apple menu.)

Options...

Presents you with a multi-part dialog in which you may set the various options. For details on the Options dialog, see the Options Dialog section of this manual.

Save Window Pos.

Saves the current position of the Timer window. This is so that you don't have to move the window every time you start up. For information on the features of the Timer window, see the Timer Window section of this manual.

Sleep Now

This menu item will allow you to start your break before the timer runs out. This allows you to take a break before one is scheduled. If you have to leave your computer for some reason anyway, you might as well use that time as one of your breaks. This will allow you to make the most efficient use of your time.

Show Key Stats

Displays a window containing a summary of your key and mouse useage statistics. For more information on these statistics, see the Event Tracking Options section.

Help...

This menu item is only one of the many ways you may invoke the on-line help. You may also use the Coffee Break Help menu item under the Balloon Help menu, or you may press the Help key on your Extended keyboard, or you may press Command-?.

The on-line help is handled through a Help helper application. (A helper application is a program that performs a specific service at the request of another program.) Any World Wide Web browser, such as Netscape, can be used as the Help helper. In addition, HTML Viewer should support this feature as well. Unfortunately, America Online's WWW browser cannot be used for this purpose at the time of this writing. (For information about how to specify your preferred Help helper, see the Helper Options section of this manual.)

Coffee Break handles on-line help in a context-sensitive manner. If you are using a Help helper to view the help, the appropriate section of the manual will be displayed. For instance, if you have the Options dialog open to the Timer Options section when you ask for help, the Timer Options portion of the help file will be displayed.

If you do not have a Help helper, Coffee Break will ask what you want to do. You can specify a helper application at this point, or you can choose to use SimpleText (or TeachText) to open the plain text version of the help file. Unfortunately, it cannot display the help in a context-sensitive manner using SimpleText.

Quit

This doesn't work quite the way you would expect. When you select Quit, unless you have turned the Restrict User option off in the Options dialog, you will be put into "Quit pending" mode. This means that Coffee Break will not quit until after the next break.

(For more information on the Restrict User option, see the information in the General Options section of this manual.)

Let me offer a quick explanation for this behavior. People like me are sneaky. If I were coming up on the end of my work time, and couldn't tear myself away from that game of Civilization I was playing, I'd quit the app and restart it, thus starting my work time from the beginning again. That's cheating, a very nasty type, since it allows you to reduce the usefulness of this program to ZERO! Since I didn't want that to happen, I added this "feature". (I am WELL aware that many of you won't like this feature, but most likely you won't like it because it's working!)

The Options dialog

The Options dialog is a multi-part dialog from which almost all of Coffee Break's options are set. The only controls that are the same in all "panes" of the dialog are the Topic pop-up menu, and the OK and Cancel buttons. All other controls change according to the topic.

To change to a different topic, simply choose it from the Topic pop-up menu. The controls will change to allow you to edit the options pertaining to that topic.

When you are done editing your options, click the OK button. Note that it is not necessary to click the OK button when you complete each section -- when you click OK, all the changes you have made in all topics are saved.

Your options are saved in a file called Coffee Break Preferences inside Preferences in the System Folder. You can delete this file to reset the options to their defaults. (Of course, Coffee Break won't change to reflect the change until you restart the program or edit the options again.)

General Options

The General Options topic allows you to change the miscellaneous options in Coffee Break.

Wake up sound

"Wake up sound" simply specifies whether Coffee Break will beep to alert you when your break is over. If this option is on, Coffee Break will beep three times to indicate the end of your break.

Finder to front

The "Finder to front" option allows you to tell Coffee Break whether or not it should bring the Finder to the front after launching. With this option on, immediately after Coffee Break launches, the Finder will be brought back to the front (to make Coffee Break more friendly to put in the Startup Items folder).

Restrict user

The "Restrict user" option exists to allow the user to specify the level of control desired. With this option on, certain things are not allowed.

First, it prevents you from quitting the program to avoid a break. Choosing Quit will put the program into "Quit pending" mode, and the program will not actually quit until after your next break. If this option is off, choosing Quit will quit the program immediately (with a warning).

Second, it disables the feature allowing emergency exit from sleep mode. With this feature off, pressing Command-X allows to exit sleep mode. If you exit from sleep mode, the amount of time left on the sleep timer will be added to the amount of time you must take for your next break. When you turn on "Restrict user", Cmd-X does nothing.

To prevent casual use of this feature to quit the program, turning this option off is made slightly difficult. When you uncheck the check box, it won't actually turn off "Restrict user" mode until after the next break. This may seem like a pain for users who want to turn off "Restrict user", but it's very useful for those who want to leave it on and don't want the temptation of being able to turn it off just so they can quit.

Pause when saver on

The "Pause when saver on" check box tells the program to pause the timer whenever it detects that a screen saver is on. See the Read Me file for a list of screen savers that support this option.

For more information about pausing the timer, see the Pausing the timer section of the manual.

Invisible sleep

"Invisible sleep" allows you to change the way Coffee Break handles your breaks. With this option on, Coffee Break will display a timer in the menu bar during sleep time instead of displaying the built-in screen saver. In all other respects, a break with this option on works the same as a break with this option off. The advantage of this option is that it allows you to continue to read on-line documents (though you can't scroll) during sleep. However, I discourage the use of this option, as prolonged viewing of your monitor can produce eye strain.

Show Timer

The "Show Timer" item allows you to hide and show the Timer window. When this box is checked, the Timer window is visible. In my opinion, there is really very little reason to hide the Timer window, but this option is there nonetheless.

For more information about the Timer window, see the Timer Window section of this manual.

Floating Timer

This check box allows you to specify that you would like the timer window to "float" above all other windows in all running applications. This will allow you to see the timer at any time, while turning this option off will allow other windows to obscure the timer window.

Timer Options

There are three times which can be set in the Timer Options section of the Options dialog: work time, sleep time, and save warn time.

Work time

The Work time is the time in minutes that you have between breaks. This is the time that is always displayed in the Timer window. Work time is specified by entering an integer value (no fractional values), which represents a number of minutes.

Sleep time

The Sleep time is the minimum amount of time the computer remains locked during a break. Work time will not begin again until you acknowledge the end of sleep time. (This is so that if you specified a five minute break and were away for ten minutes, you don't lose five minutes of work time.) Like work time, sleep time is also specified by an integer value representing a number of minutes.

Save warn time

Save warning time is the time at which you are prompted to get ready for sleep time. Like the work and sleep times, this value is also an integer value, but is in units of seconds rather than minutes.

Note that these time settings won't take effect until the next time the program changes modes from work time to sleep time, or vice versa. So you can't extend the time of your next break when you get close to it!

Notification Options

This set of options specifies how you will be notified at the specified save warn time. You may check any combination of these items.

For information about the save warn time, see the Timer Options section of this manual.

Sound

The Sound check box specifies that the computer will make a special warning sound at the specified save warn time. When this sound is played, you will have to wait for it to finish before you can do anything else -- so if you decide to do some hacking with ResEdit and change the sound, make sure not to use one that's too long.

Alert

The Alert check box specifies that the computer will remind you with an alert. Until you press the OK button, Coffee Break's timer will pause. Note that the alert window only stays on the screen for 30 seconds to avoid grinding your computer to an indefinite halt.

Flashing menu

The Flashing menu bar check box will make the menu bar flash twice at the specified save warn time.

Flashing icon

The Flashing icon check box will make the Application menu (you know, the one on the far right) alternate between the current application's icon and Coffee Break's icon. The flashing will stop either at sleep time, or if you bring Coffee Break to the front.

Pause Corner Options

Coffee Break allows you to move the mouse into one corner of the screen to pause the timer. (This is very similar to the "sleep now" and "sleep never" corners in many screen savers.) The Pause Corner Options section of the dialog allows you to specify which corner. Simply click the radio button corresponding to the appropriate corner, and you're done.

To actually use this feature, all you have to do is move the mouse into the selected corner. If you are the lucky owner of multiple monitors, the corner you've chosen is a corner of the the main monitor (i.e., the one with the menu bar).

Helper Options

The Helper Options allow you to specify "helper" applications for various tasks. (A helper application is a program that can be used to perform specific tasks at the request of another application.) There are only two helper options at the present time: the on-line help helper and the pause helper.

The on-line help helper is the application used to display the on-line help. This application MUST be a World Wide Web browser (such as Netscape) or other program that is capable of displaying HTML files. HTML Viewer should now support this option as well, and may be a better bet for someone who doesn't currently have a web browser. (Note, however, that if you don't have a program that supports this option, you will still have the opportunity to view the help in a plain text file.)

The pause helper is the application that causes Coffee Break's timer to pause when that application is in the front. This option would be most effective when used with an application screensaver (not a screensaver in the form of a control panel or extension). Note that, while you may set Darkside of the Mac as the pause helper, it is unnecessary to do so, as Darkside is one of the few screensavers that supports the Pause when saver on option.

To set a helper, click the Change button. You will be prompted to locate a program to act as a helper. Just select the program you want and choose Open.

To clear a helper, hold down the Option key. The Change button will become a Clear button. Click the Clear button and the helper will be cleared.

Hot Key Options

The Hot Key Options allow you to set various global hot keys that do certain things. Currently, there are two hot keys: one that brings Coffee Break to the front, and another that hides the timer window (pressing this key a second time will show the timer window again).

To change these hot keys, click the Change button next to the appropriate key. You will be presented with a message telling you to press a key combination. If you press a key combination, those keys will replace the current hot key combination. If you click the Cancel button, Coffee Break will forget you ever asked to change the hot key. Legal hot keys can contain one character key and any combination of modifier keys. (The modifier keys are Command, Option, Control, Shift, and Caps Lock.)

Note that Coffee Break uses a special patch (for you tech-types, it uses a jGNEFilter) to examine keypresses in any application. When you press a hot key, no other applications will see that keypress -- unless they managed to get a jGNEFilter installed before Coffee Break.

Timer Click Options

Coffee Break allows you to do several things by simply clicking on the Timer window while holding down sets of modifier keys (see above for a list of modifier keys). This section of the Options dialog allows you to set the modifiers used for each task.

There are three tasks for which you can set modifier keys. To set modifiers for a particular task, click the button corresponding to that task while holding down your preferred modifier keys. (Note that if you click a button without holding down any modifier keys, you will not be able to activate that task until you actually assign it a modifier.)

The Snooze task activates Coffee Break's snooze feature. This feature allows you to postpone your break, though not without sacrifice. When you activate the snooze feature, Coffee Break will display a dialog asking for an amount of time for which to snooze. You may enter an integer (no fractional values) no larger than your current work time setting in the Options dialog. This amount of time will be added to the current timer, and after the next break, it will be subtracted from the timer. You may only activate this feature once between breaks.

The Bring to Front task does just what it says: it brings Coffee Break to the front. This is useful if you have the Timer window set to be a floating window and you want to quickly access an item in one of Coffee Break's menus.

The Sleep task causes Coffee Break to enter sleep mode immediately, forcing you to take a break. This works the same as the Sleep Now menu item.

Event Tracking Options

At this time, all the event tracking will do is allow you to display certain statistics. Eventually, I plan to make event tracking determine when you are forced to take breaks, if you so desire.

There are three values tracked -- key presses, mouse clicks, and mouse movements. Key presses and mouse clicks are straightforward, and you can see the total actions or the actions per minute. Mouse movements are a little more nebulous, and are based on a system of checking mouse position once per second. Thus, the most you can have are 60 mouse movements per second.

These values are displayed in the Key Stats window when requested. Additional statistics are controlled via the Event Tracking Options. This pane shows six numeric entry fields. These fields can contain any reasonable integer (i.e., whole numbers). They represent thresholds for six different values -- high and low thresholds for each of the action types (key presses, mouse clicks, and mouse movements). The Key Stats window displays the percentage of total time that you have spent above these thresholds for ANY action.

For example, suppose that you are not moving the mouse or clicking at all. If you spend 45 seconds typing at 100 characters per minute and 15 seconds not typing at all, and your high threshold for keystrokes is 70, 75 (meaning 75%) will be displayed for the time spent above the high threshold for keystrokes (and for the low threshold, since you will also be above it).

As another example, if you type for 30 seconds above the high threshold for keystrokes, then stop typing and move the mouse for 30 seconds at more than the high threshold for mouse movements, the time spent above the thresholds will be 100%. If you then performed no action for 60 seconds, the time spent would drop to 50% (60 seconds spent above a threshold and 60 seconds under both thresholds).

This allows you to track your actions more precisely. In addition, eventually you will be able to have Coffee Break react in different ways depending on time spent above or below these thresholds. This is not in place at this time, however.

The Timer window

The Timer window is the small window containing a constantly decrementing timer. It is only visible if the "Show time window" menu item is checked.

To move the Timer window, click anywhere in the window and drag it to it's new location. You should be able to drag it to any position on any monitor.

There are several modifier-key sequences that you may hold down while clicking in the Timer window to do certain tasks. For more information about these sequences, see the Timer Click Options section of the manual.

Pausing the timer

There are many ways to pause the timer. To find out more about the methods of pausing, see the General Options, the Pause Corner Options, and the Helper Options sections of this manual.

Whenever the timer pauses, it will reset if it remains paused longer than your current sleep time setting. This allows you to treat a pause in the same way as a break.

Recommended methods of use

The easiest way to use Coffee Break is to simply drop it (or an alias) in your Startup Items folder. The next time you restart, it will start up automatically. To make this as convenient as possible, Coffee Break automatically places itself in the background on startup.

Note, however, that if you do this, you will have a problem if you use Darkside of the Mac. Coffee Break will start up before Darkside, and therefore will not detect that a screen saver is running. So, Coffee Break will turn off the "Pause when saver on" option. To avoid this problem, simply change either Coffee Break's or Darkside's name to ensure that Darkside loads first.

You could also keep it in a convenient place and launch it only when you want, but I've found that that doesn't work too well. If I don't keep it in the Startup Items folder, I'll only rarely turn it on, which defeats it's purpose. Coffee Break is not any use if you only use it when you feel like it.

Limitations

Coffee Break's biggest limitation is that it is STRICTLY a System 7.x application. It will not work on machines running System 6, so don't even make the attempt. It should, however, work on ANY machine running System 7.x, including a Mac Plus. (I can't say much about anything older, but it should work in theory.)

Coffee Break also has a feature which will work only if you have one of a select group of screen savers installed. Namely, the "Pause when saver on" option. If you do not have a compatible screen saver, you will not be able to turn this option on. For a list of compatible screen savers, the Read Me file.

The "Floating timer" option will work only under System 7.1 or later. So, this option will be unavailable to those of you who are still using System 7.0.x.

Registering

Coffee Break costs $6 (US). To register, see the How To Register document that came with the Coffee Break package.

In case you'd like to get in touch with me through e-mail, you can send me mail at ThomasReed@kagi.com.

Author's Comments

First of all, I'd like to say that I hope you enjoy Coffee Break, and I hope that it actually does you some good. I know it has for me, and for a number of my registered users, so I don't doubt that it will help others.

I would also like to say that if you for some reason or another can't register Coffee Break, but you need it, use it anyway. The primary purpose of the program is not to make money, but to help people. I'm trusting you to register it if you can and if you think the program's worth it.

I also invite you to give me your thoughts and ideas about this program. I welcome input, and though I may not use all the ideas I get, I do use a lot of them. (In fact, many of the features that have found their way into Coffee Break were originally suggestions from people like you.) If you send me e-mail, I guarantee that I will get you a timely reply. If you send snail mail, however, I can't guarantee that my reply will be timely! (I don't even write my parents as often as I should!)

In addition, if you have any questions whatsoever about this program that you feel have not been adequately answered, please feel free to ask me. I am of the school of thought that the only stupid question is one that is not asked. So don't feel like you're bothering me. I'm happy to help!

Anyway, enough rambling. I hope you like my program, and good luck with your future prevention (or treatment) of RSIs!


Thomas Reed \ ThomasReed@kagi.com